package com.power.sifa.correction.service;

import org.springframework.data.domain.Page;
import com.power.sifa.correction.model.Crw_rule_night;
import com.power.sifa.correction.model.pageInfo.Crw_rule_nightPageInfo;

import java.io.Serializable;
import java.util.List;

/**
 *  夜间活动设置业务层
 */
public interface Crw_rule_nightService {

    /**
     *  根据id获取夜间活动设置对象
     */
    Crw_rule_night getById(Serializable id);

    /**
     *  根据传入夜间活动设置对象进行新增或更新操作
     */
    void saveOrUpdate(Crw_rule_night crw_rule_night);

    /**
     *  根据id删除夜间活动设置
     */
    void removeById(Serializable id);

    /**
     *  根据传入条件查询夜间活动设置分页结果
     */
    Page<Crw_rule_night> findAll(Crw_rule_nightPageInfo pageInfo);
    
    /**
     * 查询全部夜间活动设置
     */
    List<Crw_rule_night> findAll();
    
     /**
     *  根据id批量删除夜间活动设置
     */
    void removeByIds(List<String> list);
    
     /**
     *  批量保存夜间活动设置
     */
    void saveAll(List<Crw_rule_night> list);

    /**
     * 通过ruleid查询全部夜间活动设置
     */
    List<Crw_rule_night> findByRuleIds(List<String> ruleIds);

    /**
     * 修改或保存夜间活动设置及社矫人员信息
     */
    void saveRule(Crw_rule_night crw_rule_night, List<String> personIds, List<String> groupIds);

    /**
     * 删除夜间活动设置及社矫人员信息
     */
    void removeRule(String id);

    /**
     * 批量夜间活动设置及社矫人员信息
     */
    void removeRules(List<String> list);

    Boolean existsRuleName(String name);
}
